//package com.example.act6.utils;
//
//
//import com.baomidou.mybatisplus.annotation.FieldFill;
//import com.baomidou.mybatisplus.annotation.IdType;
//import com.baomidou.mybatisplus.core.exceptions.MybatisPlusException;
//import com.baomidou.mybatisplus.generator.AutoGenerator;
//import com.baomidou.mybatisplus.generator.FastAutoGenerator;
//import com.baomidou.mybatisplus.generator.config.OutputFile;
//import com.baomidou.mybatisplus.generator.config.StrategyConfig;
//import com.baomidou.mybatisplus.generator.config.rules.NamingStrategy;
//import com.baomidou.mybatisplus.generator.engine.FreemarkerTemplateEngine;
//import com.baomidou.mybatisplus.generator.fill.Column;
//import com.baomidou.mybatisplus.generator.fill.Property;
//import org.apache.commons.lang3.StringUtils;
//
//import java.util.*;
//
//public class CodeGenerator {
//
//
//    public static void main(String[] args) {
//        String url = "jdbc:mysql://10.30.6.11:3306/act6?serverTimezone=Asia/Shanghai&useUnicode=true&characterEncoding-utr-8&useSSL=false&nullCatalogMeansCurrent=true";
//        String projectPath = System.getProperty("user.dir");
//        String mapperPath = projectPath + "\\src\\main\\resources\\mapper";
//
//        Map<OutputFile, String> pathInfo = new HashMap<>();
//        pathInfo.put(OutputFile.xml, "D://");
//        pathInfo.put(OutputFile.entity, "D://entity//");
//
//        FastAutoGenerator.create(url, "root", "root@Supcon123")
//                .globalConfig(builder -> {
//                    builder.author("jrw") // 设置作者
////                            .enableSwagger() // 开启 swagger 模式
//                            .fileOverride() // 覆盖已生成文件
//                            .outputDir("D://"); // 指定输出目录
//                })
//                .packageConfig(builder -> {
//                    builder.parent("com.example.act6") // 设置父包名
//                            .moduleName("study") // 设置父包模块名
//
//                            .pathInfo(Collections.singletonMap(OutputFile.xml, mapperPath)); // 设置mapperXml生成路径
//                })
//                .strategyConfig(builder -> {
//                    builder.addInclude("sys_user")
//                            .entityBuilder()
//                            .addTableFills(new Column("create_time", FieldFill.INSERT))
//                            .addTableFills(new Property("updateTime", FieldFill.INSERT_UPDATE))
//                            .idType(IdType.AUTO)
//                            .formatFileName("%sEntity");
//
//                })
//                .templateEngine(new FreemarkerTemplateEngine())
//                .execute();
//
//    }
//
//}
